
Explore Typer, a Python library to build command line interfaces, built on Click and designed for Python 3.6+ with typings. Learn installation and a hello world example.
Install typer and rich, create a hello world typer app, and set up a virtual environment. Explore hello and goodbye commands with a name argument and a formal option.
Explore how to implement group commands in typer using nested typer apps like repo and star, then add these groups to the main app with subcommands like list and delete.
Learn to list all repositories for a GitHub user via GitHub RESTful API in a command line interface, authenticate with a token, test with Postman, and generate Python requests code.
Learn to initialize a new Python project for a GitHub CLI with poetry, create the GitHub CTL package, configure pyproject.toml, set up a virtual environment, and install typer and requests.
Load environment variables from a local .env file using python-dotenv to supply a GitHub token for authorization in http headers.
Push your Python project to GitHub by initializing a local git repository, configuring a dot env gitignore, committing changes, and pushing to a new GitHub repository.
Explore GitHub Codespaces, a cloud-based development environment accessible in your browser, with Python tooling and Poetry preinstalled for running and testing your code.
add a dash dash output option to a Typer cli in Python Typer course, using an enum for json, csv, and table formats, with a json default and input validation.
Create a reusable print_beauty function in utils.py to export a list of dictionaries to CSV using a csv dict writer and stdout, guided by an output option enum.
Demonstrate printing json output from a typer cli by converting a list of Python dictionaries with json.dumps, and switching from typer print to rich print for a clean json format.
Learn to print a table with the Rich library by deriving columns from dictionary keys and rows from values, then outputting to the console in csv, json, and table formats.
Test code in GitHub Codespaces by setting up with poetry shell, poetry install, pulling the latest master, and running Python main.py to generate the repo csv output. Explore CSV and table outputs, view JSON with Linux tools, and filter JSON data using gcc to list IDs, names, and stars, with descending sort.
add filtering to the command line interface using query expressions to show only repos of interest, filtering by language or description with a Python library.
Add a --query option to a typer cli, with -q as shorthand, to filter a repo list using Jim's path expression by language and description.
Learn to sort GitHub repositories by stars using JMESPath's sort by function, combine sorting with filtering, and reverse results to view descending orders.
Add a sort by option to filter and sort results in the Python Typer CLI, enabling sorting by a chosen key with optional reverse order.
Discover how to sort by multiple keys, like fox and stars, using a dash dash sort by option, building a key list, and applying descending multi-key sorting.
Refactor code by moving repo commands from main.py to a new COI/repo.py module. Create a Python package with an empty init file and adjust imports for a cleaner project structure.
Add a new user command with a profile subcommand in a Python Typer CLI. Print a profile showing repositories, followers, and followings.
Implement a user profile command with typer by adding a new user.py, requiring a user option, fetching repos, followers, and following from GitHub, and printing results as a table.
Explore adding and prioritizing command help in a Typer CLI, using dash dash help for repl and user, and docstrings to provide detailed, high-priority help at app and function levels.
Learn to package and share a Python project using poetry, set up a virtual environment, configure executable scripts, and build distribution files in dist for easy installation.
Publish your python package to PyPI by creating an API token, configuring poetry with the token, updating the version, building, and uploading, then install and test with pip.
Course Overview:
Welcome to "Mastering Python Typer," a comprehensive course designed to empower you with the skills needed to create interactive and efficient command-line applications using Typer, a powerful Python library. Whether you're a beginner seeking to enhance your Python proficiency or an experienced developer aiming to streamline your command-line tool development, this course is tailored for you.
What You'll Learn:
Introduction to Typer: Gain a solid understanding of Typer and its features.
Building CLI Applications: Learn how to structure and develop command-line applications with ease.
Interactive User Interfaces: Create user-friendly and interactive command-line interfaces.
Advanced Typer Features: Explore advanced features and functionalities provided by Typer.
Best Practices: Understand best practices for writing clean, maintainable, and efficient Typer code.
Why Take This Course:
Practical Skills: Acquire hands-on experience through real-world projects and exercises.
Career Boost: Enhance your Python skills, making you stand out in the competitive job market.
Community Support: Engage with a supportive community of learners and professionals.
Lifetime Access: Access course materials anytime, anywhere, and at your own pace.
Prerequisites:
Basic knowledge of Python programming is recommended, but this course is designed to be accessible to learners of all levels.
Who Should Enroll:
Python developers looking to expand their skill set.
Professionals aiming to build efficient and interactive command-line tools.
Students and enthusiasts eager to explore the world of Python Typer.
Start your journey to becoming a Typer expert today!
Enroll now and unlock the potential of Typer for building robust and user-friendly command-line applications. Join us in this exciting learning adventure, where you'll gain practical skills, connect with like-minded individuals, and transform into a proficient Python Typer developer.